home *** CD-ROM | disk | FTP | other *** search
- *=-###############################################-=*
- [*] [*]
- | Defunct Internet Protocol [DIP] |
- | optiklenz |
- | Legions Of the Underground |
- +---+*LoU*********************************LoU*+---+
-
-
- *****************************************************************
- The first few paragraphs of this text serve as an general outlook
- for people who have no prior knowledge of the tcp/ip protocols
-
- -----------------------------------------------------------------
-
- Every host or computer on the internet is addressed by an IP number.
- No two IP numbers are equivalent. A perfect analogy would be the
- procedure of the postal service. Think of IP's as being houses
- each house needs an individual identifier that is contrary
- to the other.
-
- [90150^] - House 1 [90151^] - House 2 [90153^] - House 3
-
- Each house has a different home address so that the post office
- Is able to find it and deliver mail accordingly. This goes alike
- for an IP number. Each IP number is divergent from the other
- which allows for data intended for a particular host to be
- transferred to it's destination with out error.
-
- The ip's network ID remains the same in all occurrences , but it's
- host ID changes.
-
- Example: 60.0.0.0 - Where 60 is the network ID
-
-
- All IP addresses are 32bits long, and are comprised of four 8bit segments
- known as octets The way this is addressed is using
- ones, and zeros. The human mind doesn't designate numbers
- as well as it does words this is the reason for domain naming.
- Could you imagine if people were identified by a numeric value
- rather than a name? It'd be pretty ridiculous. Picture yourself
- calling out to a friend "Hey 19682842434 ?" so for
- the same convenience of having a static name we have static IP's
- with a logical address (127.0.0.1) or a domain name
- (www.localhost.com) that interprets all the data for us.
-
-
- Quick overview on Process of IP Conversion.
-
-
-
- <*-------------------------------------*>
- 10000001 01100100 00001111 00000110 - IP
- <*-------------------------------------*>
- to
- <*-------------------------------------*>
- 129.100.15.6 <-- decimal conversion
- <*-------------------------------------*>
- to
- <*-------------------------------------*>
- PC <-- Host Name
- <*-------------------------------------*>
-
- Protocols convert to the physical address going from PC
- (Host Name) to 129.100.15.6 (decimal address).
-
- +-=============-+
- * The Process *
- +-=============-+
-
-
-
- Seeing that IP's are 32 bits in 4 8bit segments.
- If you take 32 (bits of the ip) and multiply it
- by 8(bits of each ip segment) you get 256 bits or
- a cluster of 1's, and 0's depending on how you are
- looking at it. =]
-
- The give an example of how we go from an IP in decimal form
- to a defunct ip. We'll use www.legions.org.
- Resolve the domain name. In this case we have 199.227.88.145:
-
- [segments referred to as SEG]
- ********************
- 256| 3-2-1 method...
- ********************
- 32(8) = 256
- |_SEG1(199)*256^3
- |
- SEG2(227)*256^2_+
- |
- SEG3(88)*256_+
- |
- SEG4(145)_+
- |
- 145_+ -= 3353565329 (new identifier)
-
- Defunct IP: The reason I call the new identifier a defunct IP
- is because when it goes through the above process it is
- no longer decimal form. So I refer to
- it as a "dead ip"
-
-
- Security Analysis:
-
- If you take an IP in decimal form, and convert it to a defunct IP [DIP]
- services will still resolve the number as an identifier for that host
- but since it no longer has any decimals separating segments it is perceived
- as an Intranet host rather than its original standing as an IP. This
- brings some questions of security since Intranets tend to
- have very little security implementation.
-
- Since the given locator is no longer considered an IP it is no longer
- conditional to the same security restrictions imposed on a practical
- host identifier. For this reason If you were obstructed from accessing
- specific things from behind a proxy, using the new
- identifier the security measures otherwise implemented no longer apply.
-
- open: www.legions.org
- no connection do to proxy restrictions
-
- meaning: where as 199.227.88.145 would obtain no connection
- 3353565329 would process.
-
-
- Also if you are being blocked from certain sites because they
- might contain ActiveX, Java applets, or if you just use AOL whereby
- 90% of the internet is blocked out anyway the defunct ip method will
- allow you to view the site with out any complications.
-
- The reason some administrators block sites that contain java, and
- Active X is because scripts on certain sites may be a security hazard
- or malicious in the sense that they cause a DOS (denial of service)
- or do other things which would cause otherwise keep the system from
- executing what it's setup to do.
-
-
-
- --------------------------------------------------------
- The code below was written to go with this article
- -------------------------------------------------------
-
- /*
- * defunct.cpp - use: Enter logical IP number. Results: Defunct Address
- * Defunct IP Calculation Module-
- * Legions Of the Underground - http://www.legions.org
- * Code written to assist article
- * written on Defunct IP's, and Security Risk in Keen Veracity 6
- * optiklenz@legions.org - optiklenz
- * This code may be alter'd as long as proper credit is givin
- */
-
-
- #include <iostream.h>
- #include <stdio.h>
- #include <stdlib.h>
-
- int ClearCin(istream& isIn) // Clears istream object
- {
- streambuf* sbpThis;
- char szTempBuf[20];
- int nCount, nRet = isIn.rdstate();
- {
- isIn.clear(); // Clear error flags
- sbpThis = isIn.rdbuf(); // Get streambuf pointer
- nCount = sbpThis->in_avail(); // Number of characters in buffer
- while (nCount) // Extract them to szTempBuf
- {
- if (nCount > 20)
- {
- sbpThis->sgetn(szTempBuf, 20);
- nCount -= 20;
- }
- else
- {
- sbpThis->sgetn(szTempBuf, nCount);
- nCount = 0;
- }
- }
- }
- return nRet;
- }
-
-
-
- int main()
- {
- double result=0;
- double numb[4];
- char text[15];
- cout << "Input the address you wish to use/modify...\n> ";
- cin.getline (text, 16);
- ClearCin(cin);
- //Parse numbers
- for (int x = 0, y = 0; !(x>3); x++)
- {
- char stay[3];
- if (x!=3)
- {
- for(int z =0;text[y]!='.';y++,z++)
- {
- stay[z] = text[y];
- }
- numb[x] = atof(stay);
- }
- else
- {
- for(int z =0;text[y]!='\0';y++,z++)
- {
- stay[z] = text[y];
- }
- numb[x] = atof(stay);
- }
- if (x!=3)
- y++;
- stay[0] = '\0';
- stay[1] = '\0';
- stay[2] = '\0';
- }
- cout << numb[0] << " " << numb[1] << " " << numb[2] << " " << numb[3];
- //run algorithim
- result = ((numb[0])*(16777216));
- result += ((numb[1])*(65536));
- result += ((numb[2])*(256));
- result += (numb[3]);
- int dec=0, sign=0;
- cout << endl << ecvt(result, 10, &dec, &sign) << flush;
-
- return 0;
- }
-
-
-
-